<?php


class ConsultaForm extends CFormModel
{
    public $mesosCaducar;
    public $codiClub1;
    public $codiClub2;
    public $codiClub3;
    
	/**
	 * Declares the validation rules.
	 */
	public function rules()
	{
		return array(
            array('mesosCaducar', 'required', 'message'=>"Consulta <b>#3</b>: Has d'indicar nombre de mesos."),
			array('codiClub1, codiClub2, codiClub3', 'safe'),
		);
	}

	/**
	 * Declares customized attribute labels.
	 * If not declared here, an attribute would have a label that is
	 * the same as its name with the first letter in upper case.
	 */
	public function attributeLabels()
	{
		return array(
		);
	}
    
    public function esportistesAmbSenseLlicencia($amb, $codiClub=NULL) {
        //Criteri de selecció de dades
        $criteria= new CDbCriteria;
        $criteria->with= array('llicencies');
        if ($amb)
            if ($codiClub==NULL) {
                $criteria->condition='t.idEsportista IN (SELECT llicencia.idEsportista FROM llicencia)';
            } else {
                $criteria->condition='t.idClub=:codiClub AND t.idEsportista IN (SELECT llicencia.idEsportista FROM llicencia)';
                $criteria->params= array(":codiClub"=>$codiClub);
            }
        else if ($codiClub==NULL) {
                $criteria->condition='t.idEsportista NOT IN (SELECT llicencia.idEsportista FROM llicencia)';
            } else {
                $criteria->condition='t.idClub=:codiClub AND t.idEsportista NOT IN (SELECT llicencia.idEsportista FROM llicencia)';
                $criteria->params= array(":codiClub"=>$codiClub);
            }
        
        //Dades
        $data= new CActiveDataProvider('Esportista', array(
            'criteria'=>$criteria,
            'pagination'=>array(
            'pageSize'=>Yii::app()->params['itemsPagina']),
        ));
        
        //Columnes
        $columnes= array(
            'idEsportista',
            'cognomsNom',
            'dataNaixement',
            'codiCatSalut',
            array(
                'header'=>'Club',
                'value'=>'$data->clubPertany->nom',
            ),
        );
        
        return array('dades'=>$data, 'columnes'=>$columnes);
    }
    
    public function llicenciesACaducar($mesos, $codiClub=NULL) {
        //Criteri de selecció de dades
        $criteria= new CDbCriteria;
        if ($codiClub==NULL) {
            $criteria->condition='ADDDATE(dataExpedicio, INTERVAL 12 MONTH) BETWEEN current_date AND ADDDATE(current_date, INTERVAL :mesos MONTH)';
            $criteria->params= array(":mesos"=>$mesos);
        } else {
            $criteria->condition="idClub=:codiClub AND ADDDATE(dataExpedicio, INTERVAL 12 MONTH) BETWEEN current_date AND ADDDATE(current_date, INTERVAL :mesos MONTH)";
            $criteria->params= array(":codiClub"=>$codiClub , ":mesos"=>$mesos,);
        }
        
        //Dades
        $data= new CActiveDataProvider('Llicencia', array(
            'criteria'=>$criteria,
            'pagination'=>array(
            'pageSize'=>Yii::app()->params['itemsPagina']),
        ));

        //Columnes
        $columnes= array(
            'idLlicencia',
            array(
                'header'=>'Esportista',
                'value'=>'$data->llicenciaEsportista->cognomsNom',
            ),
            array(
                'header'=>'Data de naixement',
                'value'=>'$data->llicenciaEsportista->dataNaixement',
            ),
            array(
                'header'=>'Expedició de la llicència',
                'value'=>'$data->dataExpedicio',
            ),
            array(
                'header'=>'Llicència amb el Club ',
                'value'=>'$data->llicenciaEsportista->clubPertany->nom',
            ),
        );

        return array('dades'=>$data, 'columnes'=>$columnes);
    }
}